package com.demo.service;

import com.demo.bean.FixedEvent;

import java.util.LinkedHashMap;

/**
 * @author 李天航
 * 对日常表直接操作的接口
 */
public interface ResultService {
    /**
     * 直接添加一项日程
     * @param fixedEvent 日程
     * @return status,msg
     */
    LinkedHashMap<String, Object> addResult(FixedEvent fixedEvent);

    /**
     * 更新一项日程
     * @param fixedEvent 日程
     * @return status.msg
     */
    LinkedHashMap<String, Object> updateResult(FixedEvent fixedEvent);

    /**
     * 删除一项日程
     * @param resultId 日程编号
     * @param userAccount 用户账号
     * @return status,msg
     */
    LinkedHashMap<String, Object> deleteResult(Integer resultId,String userAccount);

    /**
     * 获取全部日程
     *
     * @param fixedEvent@return status,msg,results
     */
    LinkedHashMap<String, Object> getResults(FixedEvent fixedEvent);

    /**
     * 打卡一项活动
     * @param resultId 日程编号
     * @param userAccount 用户账号
     * @return status,msg
     */
    LinkedHashMap<String, Object> finishResult(Integer resultId,String userAccount);

    /**
     * 取消打卡
     * @param resultId 结果变化
     * @param userAccount 用户账号
     * @return status,msg
     */
    LinkedHashMap<String, Object> unfinishResult(Integer resultId,String userAccount);

    /**
     * 能安排的活动的最大时间间隔
     * @param fixedEvent userAccount,weekNum
     * @return 最大时间间隔
     */
    Long maxTaskTime(FixedEvent fixedEvent);
}
